package com.baosight.risk.service.system.entity;

import com.baosight.risk.base.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;

/**
 * Table: XS_USER
 */
@Data
@ApiModel
@Table(name = "XS_USER")
public class XsUser implements Serializable {

    /**
     * 登录账号
     *
     * Table:     XS_USER
     * Column:    USER_ID
     * Nullable:  false
     */
    @ApiModelProperty("用户ID")
    @Id
    @Column(name = "USER_ID")
    private String userId;

    /**
     * 登录账号
     *
     * Table:     XS_USER
     * Column:    LOGIN_NAME
     * Nullable:  false
     */
     @ApiModelProperty("登录账号")
    @Column(name = "LOGIN_NAME")
    private String loginName;

    /**
     * 登录密码
     *
     * Table:     XS_USER
     * Column:    PASSWORD
     * Nullable:  false
     */
     @ApiModelProperty("登录密码")
    @Column(name = "PASSWORD")
    private String password;

    /**
     * 账号状态(1：可用,-1不可用)
     *
     * Table:     XS_USER
     * Column:    STATUS
     * Nullable:  false
     */
     @ApiModelProperty("账号状态(1：可用,-1不可用)")
    @Column(name = "STATUS")
    private String status;

    /**
     * 用户姓名
     *
     * Table:     XS_USER
     * Column:    USER_NAME
     * Nullable:  false
     */
     @ApiModelProperty("用户姓名")
    @Column(name = "USER_NAME")
    private String userName;

    /**
     * 手机
     *
     * Table:     XS_USER
     * Column:    MOBILE
     * Nullable:  false
     */
     @ApiModelProperty("手机")
    @Column(name = "MOBILE")
    private String mobile;

    /**
     * 邮箱
     *
     * Table:     XS_USER
     * Column:    EMAIL
     * Nullable:  false
     */
     @ApiModelProperty("邮箱")
    @Column(name = "EMAIL")
    private String email;

    /**
     * 用户类别(COMPANY企业用户，USER个人用户)
     *
     * Table:     XS_USER
     * Column:    USER_TYPE
     * Nullable:  false
     */
     @ApiModelProperty("用户类别(COMPANY企业用户，USER个人用户)")
    @Column(name = "USER_TYPE")
    private String userType;

    /**
     * 账号过期时间
     *
     * Table:     XS_USER
     * Column:    ACCOUNT_EXPIRE_DATE
     * Nullable:  false
     */
     @ApiModelProperty("账号过期时间")
    @Column(name = "ACCOUNT_EXPIRE_DATE")
    private String accountExpireDate;

    /**
     * 密码过期时间
     *
     * Table:     XS_USER
     * Column:    PWD_EXPIRE_DATE
     * Nullable:  false
     */
     @ApiModelProperty("密码过期时间")
    @Column(name = "PWD_EXPIRE_DATE")
    private String pwdExpireDate;

    /**
     * 是否锁定：-1锁定，1正常
     *
     * Table:     XS_USER
     * Column:    IS_LOCKED
     * Nullable:  false
     */
     @ApiModelProperty("是否锁定：-1锁定，1正常")
    @Column(name = "IS_LOCKED")
    private String isLocked;

    /**
     * 排序
     *
     * Table:     XS_USER
     * Column:    SORT_INDEX
     * Nullable:  true
     */
     @ApiModelProperty("排序")
    @Column(name = "SORT_INDEX")
    private Integer sortIndex;

    /**
     * 创建人
     *
     * Table:     XS_USER
     * Column:    REC_CREATOR
     * Nullable:  false
     */
     @ApiModelProperty("创建人")
    @Column(name = "REC_CREATOR")
    private String recCreator;

    /**
     * 创建时间
     *
     * Table:     XS_USER
     * Column:    REC_CREATE_TIME
     * Nullable:  true
     */
     @ApiModelProperty("创建时间")
    @Column(name = "REC_CREATE_TIME")
    private String recCreateTime;

    /**
     * 修改人
     *
     * Table:     XS_USER
     * Column:    REC_REVISOR
     * Nullable:  true
     */
     @ApiModelProperty("修改人")
    @Column(name = "REC_REVISOR")
    private String recRevisor;

    /**
     * 修改时间
     *
     * Table:     XS_USER
     * Column:    REC_REVISE_TIME
     * Nullable:  true
     */
     @ApiModelProperty("修改时间")
    @Column(name = "REC_REVISE_TIME")
    private String recReviseTime;

    /**
     * 密码修改时间
     *
     * Table:     XS_USER
     * Column:    PWD_REVISE_DATE
     * Nullable:  true
     */
     @ApiModelProperty("密码修改时间")
    @Column(name = "PWD_REVISE_DATE")
    private String pwdReviseDate;

    /**
     * 密码修改人
     *
     * Table:     XS_USER
     * Column:    PWD_REVISOR
     * Nullable:  true
     */
     @ApiModelProperty("密码修改人")
    @Column(name = "PWD_REVISOR")
    private String pwdRevisor;

    /**
     * 归档标记
     *
     * Table:     XS_USER
     * Column:    REC_FLAG
     * Nullable:  true
     */
     @ApiModelProperty("归档标记")
    @Column(name = "REC_FLAG")
    private String recFlag;

    /**
     * 用户组
     *
     * Table:     XS_USER
     * Column:    USER_GROUP_ENAME
     * Nullable:  true
     */
     @ApiModelProperty("用户组")
    @Column(name = "USER_GROUP_ENAME")
    private String userGroupEname;

    private static final long serialVersionUID = 1L;
}